第2次作业: 编写一个程序,模拟银行ATM的功能。

要求

  1. 使用面向对象的思想,模拟现实世界中的银行、账号、ATM等对象;
  2. 在程序中适当的地方,使用自定义的字段、属性、方法、索引,注意使用修饰符;
  3. 在程序中适当的地方,使用自定义的异常类;
  4. 在程序中定义一个委托,并使用事件,ATM机在操作时如果用户取款数大于10000,则可以激活这个事件(事件参数也是一个对象,含有账号及当时取款数)。在程序中注册这个事件,使之能在另一个界面中显示出告警信息(相当于银行的监控功能)。
  5. 根据程序的需要(可选做),使用C#的其他语法成分,诸如:名称空间、结构、枚举、Attribute、接口、static修饰符、运算符重载等。
  6. 在项目中添加一个类图文件,将你的主要类拖动到这个类图中。
  7. 练习使用断点、跟踪、监视等调试手段。
  8. 程序中加上适当的汉字注释,并加一个说明文件,简要描述在什么地方使用了一些特殊的语法要素。

可选做:使用Windows界面来模拟ATM机的操作界面(注意区别界面对象与非界面对象)。关于两个界面的提示:ATM可以使用一个界面(Form1), 监管可以使用另一个窗体(Form2), Form2 f2 = new Form2(); f2.Show()即可显示出来。 为了处理事件,可以在 xxx.BigMoneyFetched += f2.ShowBigMoneyInfo; 后者是显示信息的方法。